home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
SPACE 1
/
SPACE - Library 1 - Volume 1.iso
/
apps
/
298
/
freebase
/
freebase.doc
< prev
next >
Wrap
Text File
|
1988-02-06
|
13KB
|
267 lines
Hello, and welcome to FreeBase, a database management program that
is FREE! I hope you enjoy using this program as much as I have enjoyed
writing it.
Here are some of the features of FreeBase:
** mouse used for program control and data selection
** manipulations done in memory for greater speed
** ability to send reports to screen, disk, or printer
** text merge for printing form letters, labels, etc.
** import\export of data in a standard format
** fast sorting on selectable fields
** selection of records by use of criteria
** a variety of data types
** data encryption
User Interface:
In this program, I have abandoned GEM in favor of a rather simple
system of menus. When you are presented with a menu, you have the
option of either selecting the menu option with the mouse, or pressing
the number key corresponding to the number printed to the left of the
menu option. In addition, the <Undo> key is used throughout the
program to stop doing what you are doing and go back to the previous
menu. Clicking with the mouse on the top line of a menu also has this
effect. The only part of the user interface that is somewhat different
from this is the Scan/mark records mode. In this mode, moving the
mouse to the left or right determines which fields will be displayed.
Moving the mouse up or down determines which records will be displayed.
Clicking with the left mouse button on a record causes it to become
MARKED, and clicking with the right button causes it to become
unMARKED. Pressing <Undo> exits the Scan/mark mode.
Getting Started:
The first thing you will need to do is to create a new database
file. This is done from the initial menu of FreeBase. First you are
asked for a file name for the database file. Enter any combination of
up to 8 letters and numbers followed optionally by a period and up to 3
letters or numbers. Next you will be taken directly to the "Add new
fields" utility. Here you will be asked for the field name, data type,
and possibly other field information. For example, if you wanted a
file which contained the last name and age of all your friends, you
might enter for the first field:
field name: Last_Name
data type: text
field width: 15
field name: Age
data type: integer
range: 0 to 255
Don't worry about getting all the fields defined in one fall swoop.
You may add or delete fields at any time without losing any other
information in the file. The next thing you will need to do is add
some new records. This is done by selecting the Add records option
from the main menu. You will be placed in the edit mode with a blank
record as the current record. The edit mode consists of a line for
each field containing the field name and value of this field for the
current record, as well as a blank line for data entry. Use the up or
down arrow to place the cursor on the data entry line of the field
whose value you want to change. Then enter the new data and either
press the up arrow, down arrow, <Return>, or <Undo>. Moving past the
top field causes the previous record to be edited. Moving past the
last field causes a new blank record to be edited. All new records are
placed at the end of the file. Press <Undo> when you've finished
adding the last record.
Selecting "MARKING" Certain Records:
Once you've entered a large number of records for a given database
file, it is often useful to work with only a few specific records. For
this purpose, each database file you create with FreeBase will contain
the field named MARKED. This is a Boolean field which may contain the
value "Y" or "N" depending upon whether you have selected that record.
You may use this field just as you would any other field (i.e. for
sorting, selection criteria, reporting), but it is also used for
determine which records you want to edit. It can also be used to
specify which records you want to use in a report. There are two ways
to go about MARKING records: the Scan/mark records mode and the Mark
records via selection criteria utility.
1) Scan/mark records mode. This mode is entered by selecting
the Scan/mark records option from the main menu. You will be presented
with a screen which contains 4 fields and up to 24 records. Moving the
mouse to the left or right changes which fields are displayed. Moving
the mouse up or down scrolls up or down through the records. Clicking
with the left mouse button on a record causes that record to become
MARKED. The right mouse button is used to unMARK records. <Undo> is
used to exit the mode.
2) Mark records via selection criteria. This utility is
selected through the utilities menu. A selection criteria is a list of
conditions connected by the logical operators "and" or "or". The whole
is evaluated to determine which records in the file should be MARKED.
The evaluation is done strictly in the order you enter the criterium
and connectives, so a little careful forethought is required. For
example, if you wanted to MARK all the records which have Last_Name
equal to "Smith" and age greater than "20", or Last_Name equal to
"Jones", you would need to enter: Last_Name equal to Jones or Last_Name
equal to Smith and age greater than 20. For another example, in terms
of logical variables, the criteria P and Q and R or S and T or U would
be evaluated as (P and (Q and (R or (S and (T or U))))). Here are a
few identities which you might find helpful:
(P and Q) or R <=> R or (P and Q)
(P or Q) and R <=> R and (P or Q)
(P and Q) or (P and R) <=> P and (Q or R)
(P or Q) and (P or R) <=> P or (Q and R)
where P,Q, and R are propositions.
Sorting:
The order information is listed in can make a world of difference
in a database file. For example, could you imagine trying to find your
friends phone number in a phone book that was not in alphabetical
order? It is a simple matter to sort by a single field in FreeBase,
but sometimes it is useful to sort by several fields. For example, you
might want to sort a file by last name, and then within last name, sort
by first name. This also is possible in FreeBase. To do this kind of
sort, you simply sort the fields in the reverse order of their
priority. In other words, in the previous example you would first sort
the file by first name, then you would sort it by last name.
Saving:
The entire file is stored in RAM while you are manipulating it.
It is therefore necessary to save the file to disk when you are done
with it. On the other hand, there may be times when you don't want to
save the changes you've made. For instance, you may wish to delete a
large number of records in order to work more quickly with just a few
records. In this case, save the file would result in the permanent
loss of the deleted records.
Renaming a File:
The Rename file option is useful for creating a new file which
contains much of the same information as on an existing file. Simply
give the file in memory a new name, and then any further changes will
leave the original file unchanged.
Printing a Report:
There are 3 types of reports that FreeBase can generate. They
are: text merge, regular columnar format, and database file
information. Each of these can be sent to the screen, printer, or disk
file. I recommend sending the report to the screen first so that you
can be sure you've selected the correct fields. In addition, text
merge and the regular format have the option of reporting on all
records or just MARKED records. Also, you may abort the printing of
these two types of reports by pressing any key during the printing.
1) Text merge. This type of reporting is useful for generating
form letters, labels, or any sort of report that requires more than 1
printed line per record. To use this text merge, you must first use a
word processing program to produce a source (base) document. Any word
processing program that allows you to save your document in ASCII may
be used (which includes every word processor I know of). In creating
the source file, simply type out what constant text you want to appear,
then insert /? everywhere you want a value from a database file to be
inserted. For example, a form letter might look like this:
January 1, 1988
/?
/?
/?, /? /?
Dear /? /?:
This letter is to inform you about the text merge capabilities of the
FreeBase database management program. Eric Lindros has really outdone
himself with this one! Now, at absolutely no cost to us, we have a
program that will allow us to easily do are regular mailings in no time
flat.
Etc. etc. etc...
Sincerely yours
Fred Farkle
Emperor of the Universe
Then, when you select the text merge option from the reports menu,
select the source document that you created with the word processing
program. The entire document will be loaded into memory and each
occurrence of /? will be located. For each of these, you will be asked
which field should be used to replace the /?. This will be done in the
order that they appear, so be sure to print out the source document
ahead of time so you will know which field you should choose.
Import/Export Records:
It is often useful to bring values into a database file that have
been created using some other program or vice versa. This may be
accomplished using the Import records or Export records utilities. The
data format that is used by FreeBase is as follows:
"itm1","itm2",...,"itmN" <- these values are for record #1
"itm1","itm2",...,"itmN" <- " " " " " #2
.
.
.
"itm1","itm2",...,"itmN" <- these values are for the last record
where itm1 through itmN are the import/export values. Most programs
that allow importing or exporting of data provide formats that are
compatible with this format.
The Import/Export utilities may be used within FreeBase to
redefine an existing field. For example, say that you defined Zip_Code
to be an integer field and then latter discovered that you needed to
enter the zip code of 09313. As an integer, 09313 prints out as 9313.
To correct this situation, the Zip_Code field needs to be converted to
a text field. Here is the procedure.
1) Use the Export records utility and select Zip_Code as the
only export field. Be sure to make a note of the file name under which
the data is stored.
2) Use the Delete field utility to delete Zip_Code.
3) Use the Add fields utility to add a text field called
Zip_Code.
4) Use the Import field utility to import the zip code values
that were exported in step 1. Be sure to use the Overwrite existing
records option rather than the Create new records option.
Encrypt/Decrypt Records:
If you wish to use FreeBase to keep confidential information, you
may further these ends by using the Encrypt/Decrypt records utility.
Simply enter a string of characters as the key, and your data will be
put into an unintelligible form. To Decrypt the records, simply enter
the same key. Any keyboard characters may be used in the key. Be very
careful to Decrypt with EXACTLY the same key that you used to Encrypt.
If you make a mistake in the key while Decrypting, you may correct this
by entering the mistake again as the key and then entering the correct
key.
Again, I hope you enjoy using this program. I have tried to be
very thorough in debugging it, but I am sure that a small bug or two
may appear in the future. If this should happen, I would greatly
appreciate you notifying me. Also, I would like to add a note about
the name of this program. For those of you how find it offensive, I
suggest that perhaps you attach a little too much emotion to mere
words. As for myself, I can't seem to make much of a connection
between the word freebase and the use of ether and cocaine. To me,
FreeBase base means a database program that is FREE! Free is my
favorite word, so I feel free to use "free" freely. While I am on the
subject of free, I would like to mention that I charge absolutely
nothing for the use, copying, and distribution of FreeBase. However,
If you use this program, I would ask that you do me a small favor.
Please send me a note telling me what you think about the program.
This will be the only form of remuneration I receive for the 150+ hours
I spent developing FreeBase. All it take is a small card, 22 cents and
about five minutes. Send correspondence to:
Eric B. Lindros
1717 Lillingston Canyon Rd.
Carpinteria, CA 93013
phone: (805)684-6887
Thank you!